iT邦幫忙

2024 iThome 鐵人賽

DAY 5
0

簡介

在前面的章節中,我們已介紹過 Django。Django 提供了許多開發 Web Application 所需的模組,其優點是能夠顯著加快開發速度。然而,與此同時,Django 的缺點在於其客製化彈性較低,Web Application 的架構和邏輯需要嚴格遵循 Django 的框架。因此,對於某些特定功能的需求,可能難以實現。在這種情況下,開發者可能會考慮使用其他套件或框架,以獲得更高的客製化自由度。

另一個常見的選擇是 Flask。Flask 是一個輕量化的框架套件,與 Django 不同的是,它基本上不提供任何內建的 Web Application 模組。因此,開發者可以根據自己的需求,自行選擇並實作所需的模組。接下來,我們將通過範例來進行介紹。

範例

本次範例使用的是 Flask 2.3.3 版本

poetry add Flask==2.3.3

開發者只需要一個檔案就能完成最簡單的 Web Application,例如建立以下的 index.py 檔案。接著,只需執行 poetry run flask --app index run,然後在 Web Browser 中輸入 localhost:5000,即可查看應用程式的成果。

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return 'Index Page'

開發者可以根據自身需求新增 route。例如,以下範例新增了一個 URL,讓使用者能夠根據商品編號來獲取商品資訊

@app.route('/products/<product_id>')
def get_product(product_id):
    # get the product with the given id
    return {
        'id': product_id,
        'name': 'demo product',
    }

上述範例中的 URL 設計格式是開發者常用的 RESTful 格式。這種格式以資源為單位進行設計,例如 users(使用者)和 products(商品)都被視為資源。如果想要查找編號為 35567 的商品,可以使用 /products/35567 這樣的 URL 來取得該商品的資訊,而回傳的格式通常為 JSON 格式。


上一篇
[Day 04] Gunicorn
下一篇
[Day 06] Jinja2
系列文
Python 不止於數據,開發應用程式它也在行!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言